To avoid congestion collapse, transport control protocol (TCP) uses a multi-faceted congestion control strategy. TCP Reno, TCP NewReno and TCP Westwood are all congestion control algorithms implemented to improve performance over networks. These algorithms run in two states, slow start and congestion avoidance. In slow start, the sender increases the congestion window exponentially, while in congestion avoidance, the sender increases the congestion window linearly. As such, the congestion window increases more conservatively in congestion avoidance than in slow start.